"""
基于 AutoGen 的高级业务智能体
- 市场研究智能体
- 风险管理智能体
- 投资组合管理智能体
"""
import autogen
from autogen import AssistantAgent
from typing import Dict, Any

class BusinessAgentFactory:
    """
    高级业务智能体工厂
    """
    def __init__(self, llm_config: Dict[str, Any]):
        self.llm_config = llm_config

    def create_market_research_agent(self) -> AssistantAgent:
        """创建市场研究智能体"""
        return AssistantAgent(
            name="市场研究智能体",
            llm_config=self.llm_config,
            system_message="""你是一位宏观市场研究专家。
            你的职责是分析整体市场趋势、行业动态和经济指标。
            你需要提供关于市场广度、投资者情绪和潜在的宏观经济影响的报告。
            你的分析应该基于广泛的数据，而不仅仅是单一支股票。
            """,
        )

    def create_risk_management_agent(self) -> AssistantAgent:
        """创建风险管理智能体"""
        return AssistantAgent(
            name="风险管理智能体",
            llm_config=self.llm_config,
            system_message="""你是一位专业的风险管理师。
            你的任务是识别、评估和量化投资组合或单支股票的潜在风险。
            你需要分析市场风险、信用风险、流动性风险和操作风险。
            请提供一份详细的风险报告，并提出风险缓解策略。
            """,
        )

    def create_portfolio_management_agent(self) -> AssistantAgent:
        """创建投资组合管理智能体"""
        return AssistantAgent(
            name="投资组合管理智能体",
            llm_config=self.llm_config,
            system_message="""你是一位经验丰富的投资组合经理。
            你的目标是根据客户的风险偏好和投资目标，构建和优化股票投资组合。
            你需要提供资产配置建议、选股策略以及投资组合再平衡的计划。
            你的建议应以实现长期、稳定的回报为目标。
            """,
        )

